package com.xb.loan.usercenter.service.user.constant;

public interface UserConst {
	/** 主键生成的策略*/
	public static enum PriKeyStrategy{
	    COMMON("common",4),
	    FUND("fund",4), 
	    ACCOUNT_BILL("account_bill", 6), 
	    COUPON_INFO("coupon_info", 4), 
	    COUPON_BILL("coupon_bill", 4), 
	    ISSUE("issue", 4), 
	    ORDERINFO("order_info", 6), 
	    ORDERMULTI("order_multi", 6), 
	    ORDERPERISSUE("order_perissue", 6), 
	    ORDERTICKET("order_ticket", 6),
	    ORDERPAYDETAIL("order_pay_detail", 6),
	    ORDERTICKETDIFF("order_ticket_diff", 4),
	    ORDERTICKETADDI("order_ticket_addi", 4),
	    USER_CENTER("user_center", 4),
	    USER_CENTER_RELATION("user_center_relation", 4),
	    OSS_ROLE("oss_role", 4),
	    OSS_OPERATOR("oss_operator", 4),
	    CASHIER_PAYCHANNEL_TYPE("cashier_paychannel_type", 6),
	    CASHIER_PAYCHANNEL("cashier_paychannel", 6),
	    PUSH("push", 6);
	    
	    private String code;
	    private int num;
	    private PriKeyStrategy(String code, int num) {
	        this.code = code;
	        this.num=num;
	    }
	    public String getCode() {return code;}
	    public void setCode(String code) {this.code = code;	}
	    public int getNum() {return num;}
	    public void setNum(int num) {this.num = num;	}	
	}
	
	/**用户级别*/
	public static enum UserLevel {CHANNEL(1), NORMAL(3);private int code;private UserLevel(int code) {this.code = code;}public int getCode() {		return code;	}	public void setCode(int code) {this.code = code;}}
	
	/**用户业务类型*/
	public static enum UserType {DEFAULT(0),O2O(10),WINSTANT(20),OSS(30);private int code;private UserType(int code) {this.code = code;}public int getCode() {		return code;	}	public void setCode(int code) {this.code = code;}}
	
	public static enum UserPayCardbindType {	BIND(0), UNBIND(1);private int code;private UserPayCardbindType(int code) {	this.code = code;}	public int getCode() {		return code;	}	public void setCode(int code) {			this.code = code;		}	}
	
	public static enum UserPayCardDefault {	DEFAULT(0), NOTDEFAULT(1);private int code;private UserPayCardDefault(int code) {	this.code = code;}	public int getCode() {		return code;	}	public void setCode(int code) {			this.code = code;		}	}
	
	/**用户实名身份的卡类型*/
	public static enum UserIdentifyCardType {CARDNO(1), OFFICER(2), PASSPORT(3), COMPANYNO(4);private int code;private UserIdentifyCardType(int code) {this.code = code;}public int getCode() {		return code;	}	public void setCode(int code) {this.code = code;}}
	
	/**用户统一登录类型*/
	public static enum UserLoginType {LOGINNAME(1), PHONE(2), CARDNO(3);private int code;private UserLoginType(int code) {this.code = code;}public int getCode() {		return code;	}	public void setCode(int code) {this.code = code;}}
	
	/**彩民第三方帐号的类型*/
	public static enum UserThirdLoginType {QQ(1, "QQ"), WEIXIN(2, "微信");private int code;private String msg;private UserThirdLoginType(int code, String msg) {this.code = code;this.msg = msg;}public int getCode() {return code;}public void setCode(int code) { this.code = code;}}
   
	/**用户登录状态*/
    public static enum UserLoginStatus {ONLINE(1, "ONLINE"), OFFLINE(0, "OFFLINE");private int code;private String msg;private UserLoginStatus(int code, String msg) {this.code = code;this.msg = msg;}public int getCode() {return code;}public void setCode(int code) { this.code = code;}}
   
    /**用户手机验证状态*/
    public static enum UserPhoneValStatus {NOVALIDATE(0), VALIDATE(1), INVALID(3);private int code;private UserPhoneValStatus(int code) {this.code = code;}public int getCode() {		return code;	}	public void setCode(int code) {this.code = code;}}
	
    /**用户消息类型*/
    public static enum UserMsgType {USERMSG(0), FEEDBACK(10);private int code;private UserMsgType(int code) {this.code = code;}public int getCode() {		return code;	}	public void setCode(int code) {this.code = code;}}
	
    /**用户消息状态*/
    public static enum UserMsgStatus {NOREAD(0), READ(1);private int code;private UserMsgStatus(int code) {this.code = code;}public int getCode() {		return code;	}	public void setCode(int code) {this.code = code;}}
	
    /**用户反馈状态*/
    public static enum UserFeedbackStatus {NOFEEDBACK(0), FEEDBACK(1);private int code;private UserFeedbackStatus(int code) {this.code = code;}public int getCode() {		return code;	}	public void setCode(int code) {this.code = code;}}
	
    /**用户是否强制登录*/
    public static enum UserLoginForceType {NOFORCE(0), FORCE(1);private int code;private UserLoginForceType(int code) {this.code = code;}public int getCode() {		return code;	}	public void setCode(int code) {this.code = code;}}
	
    /**用户是否实名*/
    public static enum UserRealFlag {NOREAL(0), REAL(1);private int code;private UserRealFlag(int code) {this.code = code;}public int getCode() {		return code;	}	public void setCode(int code) {this.code = code;}}
    
    /**用户活动类型*/
    public static enum UserActivityType {SALE(0), CHARGE(1);private int code;private UserActivityType(int code) {this.code = code;}public int getCode() {		return code;	}	public void setCode(int code) {this.code = code;}}
    
    /**用户状态*/
    public static enum UserStatus { 
        NORMALSTATUS(1, "正常"),
        FROZENSTATUS(2, "冻结"),
        LOGOFFSTATUS(3, "注销"),
        UNBINDAPPLYSTATUS(4, "解绑申请待审核"),
        UNBINDAPPLYSUCCESSSTATUS(5, "解绑申请审核通过");
        private int code;
        private String msg;
        private UserStatus(int code, String msg) {
            this.code = code;this.msg = msg;
        }
        public int getCode() {return code;}
        public void setCode(int code) { this.code = code;}
        public String getMsg() {return msg;}
        public void setMsg(String msg) { this.msg = msg;}
     }

    
    /**
     * 用户序列（用户主键生成）
     * 1:'身份证',2:'军官证',3:'护照',4:'公司编号'
     */
    public static enum UserSeq { 
        COMMONUSER("commonUser", 4),
        PARTNERUSER("partnerUser", 7);
        private String name;
        private int code;
        private UserSeq(String name, int code) {
            this.name = name;this.code = code;
        }
        public String getName() {return name;}
        public void setName(String name) { this.name = name;}
        public int getCode() {return code;}
        public void setCode(int code) { this.code = code;}
     }
    
    /**
     * 用户提现充值阈值状态
     */
    public static enum  thresholdStatus{ 
        PENDINGAUDIT(0,"未审核"), 
        HAVEAUDITED(1,"已审核");
        private int code;
        private String msg;
        private thresholdStatus(int code, String msg) {
            this.code = code;this.msg = msg;
        }
        public int getCode() {return code;}
        public void setCode(int code) { this.code = code;}
        public String getMsg() {return msg;}
        public void setMsg(String msg) { this.msg = msg;}
        
     }
    
    /**
     * 注册来源
     */
    public static enum RegisterFrom { 
        Phone(10, "手机");
        
        private int code;
        private String msg;
        private RegisterFrom(int code, String msg) {
            this.code = code;this.msg = msg;
        }
        public int getCode() {return code;}
        public void setCode(int code) { this.code = code;}
        public String getMsg() {return msg;}
        public void setMsg(String msg) { this.msg = msg;}
     }
}
